<?php
include_once dirname(__FILE__) . '/backend.class.php';
include_once dirname(__FILE__) . '/frontend.class.php';
 
class Banner extends Backend
{
	public function ReadBannerList()
	{
		$sql = "SELECT banner.id, tipo, pos, banner.user_id, banner.note, path_banner, banner.user_id, utenti.nome, utenti.username, utenti.tipo_class, utenti.sesso, utenti.zona, citta.nome as citta, href_banner, href_banner_en, href_banner_fr, href_banner_es, href_banner_pt, href_banner_de, href_banner_zh, title_banner, slogan_banner, banner.f_attivo, f_sezione_EL, f_sezione_ET, f_sezione_ES, f_sezione_TL, f_sezione_TT, f_sezione_TS, f_sezione_GL, f_sezione_GT, f_sezione_GS, dt_inizio, dt_fine
		FROM banner LEFT JOIN utenti ON banner.user_id = utenti.user_id
     	LEFT JOIN citta ON citta.id_citta = utenti.id_citta ";
			
		if(!isset($_GET['order']))
			$sql .= "ORDER BY tipo, banner.f_attivo desc, dt_fine desc, pos, title_banner";
		else {
			$order = $_GET['order'];	
			if(!isset($_GET['direz']))			
				$sql .= "ORDER BY ".$order." ASC";
			else
				$sql .= "ORDER BY ".$order." ".$_GET['direz'];
		}
		
		$this->_res = mysql_query ($sql, $this->conn);
		//die($sql);
		include '../template/' . TEMPLATE_ADMIN_NAME . '/banners.php';
		return;
	}
	
	public function ReadBannerByUser($id_utente)
	{
		$sql = "SELECT banner.id, tipo, pos, banner.user_id, banner.note, path_banner, utenti.username, href_banner, href_banner_en, 	href_banner_fr, href_banner_es, href_banner_pt, href_banner_de,	href_banner_zh, title_banner, slogan_banner, banner.f_attivo, f_sezione_EL, f_sezione_ET, f_sezione_ES, f_sezione_TL, f_sezione_TT, f_sezione_TS, f_sezione_GL, f_sezione_GT, f_sezione_GS,
		dt_inizio, dt_fine
		FROM banner inner JOIN utenti ON banner.user_id = utenti.user_id ";
			
		if(isset($id_utente))
			$sql .= " AND utenti.user_id = ".$id_utente;
		if(!isset($_GET['order']))
			$sql .= " ORDER BY tipo, pos, title_banner";
		else {
			$order = $_GET['order'];	
			if(!isset($_GET['direz']))			
				$sql .= " ORDER BY ".$order." ASC";
			else
				$sql .= " ORDER BY ".$order." ".$_GET['direz'];
		}
		
		$this->_res = mysql_query ($sql, $this->conn);
		//die($sql);
		return $this->_res;
	}
	public function ShowListBannersSection($tipo, $pos, $sezioni, $numBanners)
	{
		$sql = "SELECT id, tipo, pos, banner.user_id, path_banner, banner.note, href_banner, href_banner_en, href_banner_fr, href_banner_es, href_banner_pt, href_banner_de,	href_banner_zh, title_banner, slogan_banner, banner.f_attivo, 
		f_sezione_EL, f_sezione_ET, f_sezione_ES, f_sezione_TL, f_sezione_TT, f_sezione_TS, f_sezione_GL, f_sezione_GT, f_sezione_GS,
		banner.dt_inizio, banner.dt_fine, utenti.nome, utenti.username, utenti.tipo_class, utenti.sesso, utenti.zona, citta.nome as citta
		FROM banner LEFT JOIN utenti ON banner.user_id = utenti.user_id
     	LEFT JOIN citta ON citta.id_citta = utenti.id_citta ";	
		$sql .= "WHERE utenti.f_attivo_admin = 'S' AND banner.f_attivo = 'S' AND utenti.f_vacanza = 'N' AND (banner.dt_fine >= CURDATE() or banner.dt_fine ='0000-00-00') AND banner.tipo = '$tipo' AND banner.pos = '$pos' ";
		//die($sql);
		if($sezioni!="")
		{
			$sql .= "AND (";  
			$sezioni_array = explode(",", $sezioni);
			for ($contatore=0; $contatore < count($sezioni_array); $contatore++) 
			{				
				if(count($sezioni_array) > 1 && $contatore>0)
					$sql .= "OR ";  
				$sezione = trim($sezioni_array[$contatore]);
				
				switch ($sezione) {
					case "EL":
						$sql .= "f_sezione_EL = 'S' ";  
						break;
					case "ET":
						$sql .= "f_sezione_ET = 'S' ";  
						break;
					case "ES":
						$sql .= "f_sezione_ES = 'S' ";  
						break;
					case "TL":
						$sql .= "f_sezione_TL = 'S' ";  
						break;
					case "TT":
						$sql .= "f_sezione_TT = 'S' ";  
						break;
					case "TS":
						$sql .= "f_sezione_TS = 'S' ";  
						break;
					case "GL":
						$sql .= "f_sezione_GL = 'S' ";  
						break;
					case "GT":
						$sql .= "f_sezione_GT = 'S' ";  
						break;
					case "GS":
						$sql .= "f_sezione_GS = 'S' ";  
						break;
					default:
						$sql .= "f_sezione_EL = 'S' ";  
				}
			} 
			$sql .= ") ";  
		}
		$sql .= "ORDER BY rand( ) desc LIMIT $numBanners";
		//echo($sql);
		$resBanners = mysql_query ($sql, $this->conn);
		return $resBanners;	
	}
	public function ShowSingleBanner()
	{
		if(isset($_GET['id']) && $_GET['id']!="")
		{
			$sql = "SELECT banner.id, tipo, pos, banner.user_id, path_banner, utenti.username, banner.note, href_banner, href_banner_en, 	href_banner_fr, href_banner_es, href_banner_pt, href_banner_de,	href_banner_zh, title_banner, slogan_banner, banner.f_attivo, 
		f_sezione_EL, f_sezione_ET, f_sezione_ES, f_sezione_TL, f_sezione_TT, f_sezione_TS, f_sezione_GL, f_sezione_GT, f_sezione_GS,
		dt_inizio, dt_fine
		FROM banner LEFT JOIN utenti ON banner.user_id = utenti.user_id WHERE banner.id=$_GET[id]";
			//die($sql);
			$result = mysql_query ($sql, $this->conn);
			$row = mysql_fetch_array($result);
	
			$this->_id = $row['id'];
			$this->_tipo = stripslashes($row['tipo']);
			$this->_pos = $row['pos'];
			$this->_f_sezione_EL = $row['f_sezione_EL']; 
			$this->_f_sezione_ET = $row['f_sezione_ET']; 
			$this->_f_sezione_ES = $row['f_sezione_ES']; 
			$this->_f_sezione_TL = $row['f_sezione_TL']; 
			$this->_f_sezione_TT = $row['f_sezione_TT']; 
			$this->_f_sezione_TS = $row['f_sezione_TS']; 
			$this->_f_sezione_GL = $row['f_sezione_GL']; 
			$this->_f_sezione_GT = $row['f_sezione_GT']; 
			$this->_f_sezione_GS = $row['f_sezione_GS']; 					
			$this->_user_id = $row['user_id'];
			$this->_title_banner = stripslashes($row['title_banner']);
			$this->_slogan_banner = stripslashes($row['slogan_banner']);
			$this->_username = $row['username'];
			$this->_note = $row['note'];
			$this->_href_banner = $row['href_banner'];
			$this->_href_banner_en = $row['href_banner_en'];
			$this->_href_banner_fr = $row['href_banner_fr'];
			$this->_href_banner_es = $row['href_banner_es'];
			$this->_href_banner_pt = $row['href_banner_pt'];
			$this->_href_banner_de = $row['href_banner_de'];
			$this->_href_banner_zh = $row['href_banner_zh'];
			$this->_path_banner = $row['path_banner'];
			$this->_f_attivo = $row['f_attivo'];			
			$this->_dt_inizio = $row['dt_inizio'];
			$this->_dt_fine = $row['dt_fine'];
		}				  
		else
		{
			$this->_id = "";
			$this->_tipo = "";
			$this->_pos = "";
			$this->_f_sezione_EL = "N"; 
			$this->_f_sezione_ET = "N"; 
			$this->_f_sezione_ES = "N"; 
			$this->_f_sezione_TL = "N"; 
			$this->_f_sezione_TT = "N"; 
			$this->_f_sezione_TS = "N";  
			$this->_f_sezione_GL = "N"; 
			$this->_f_sezione_GT = "N"; 
			$this->_f_sezione_GS = "N"; 
			$this->_user_id = "";
			$this->_title_banner = "";
			$this->_slogan_banner = "";
			$this->_username = "";
			$this->_note = "";
			$this->_href_banner = "";
			$this->_href_banner_en = "";
			$this->_href_banner_fr = "";
			$this->_href_banner_es = "";
			$this->_href_banner_pt = "";
			$this->_href_banner_de = "";
			$this->_href_banner_zh = "";
			$this->_path_banner = "";
			$this->_f_attivo = "";		
			$this->_dt_inizio = "";	
			$this->_dt_fine = "";	
		}		
		include '../template/' . TEMPLATE_ADMIN_NAME . '/banner.php';
			
		return;
	}
	
	function SaveBanner()
	{
		$id = $_POST['id'];
		$user_id = $_POST['user_id'];
		$tipo = $_POST['tipo'];
		$pos = $_POST['pos'];
		if(isset($_POST['f_sezione_EL']))
			$f_sezione_EL = "S";
		else
			$f_sezione_EL = "N";
		if(isset($_POST['f_sezione_ET']))
			$f_sezione_ET = "S";
		else
			$f_sezione_ET = "N";
		if(isset($_POST['f_sezione_ES']))
			$f_sezione_ES = "S";
		else
			$f_sezione_ES = "N";
		if(isset($_POST['f_sezione_TL']))
			$f_sezione_TL = "S";
		else
			$f_sezione_TL = "N";
		if(isset($_POST['f_sezione_TT']))
			$f_sezione_TT = "S";
		else
			$f_sezione_TT = "N";
		if(isset($_POST['f_sezione_TS']))
			$f_sezione_TS = "S";
		else
			$f_sezione_TS = "N";
		if(isset($_POST['f_sezione_GL']))
			$f_sezione_GL = "S";
		else
			$f_sezione_GL = "N";
		if(isset($_POST['f_sezione_GT']))
			$f_sezione_GT = "S";
		else
			$f_sezione_GT = "N";
		if(isset($_POST['f_sezione_GS']))
			$f_sezione_GS = "S";
		else
			$f_sezione_GS = "N";
			
		$path_banner = $_POST['path_banner'];
		$href_banner = $_POST['href_banner'];
		$href_banner_en = $_POST['href_banner_en'];
		$href_banner_fr = $_POST['href_banner_fr'];
		$href_banner_es = $_POST['href_banner_es'];
		$href_banner_pt = $_POST['href_banner_pt'];
		$href_banner_de = $_POST['href_banner_de'];
		$href_banner_zh = $_POST['href_banner_zh'];
		$title_banner = $_POST['title_banner'];
		$slogan_banner = $_POST['slogan_banner'];
		$note = $_POST['note'];
		$f_attivo = $_POST['f_attivo'];
		
		$obj = new Main();
		$dt_inizio = $obj->formattaDataPerQuery($_POST['dt_inizio']);
		
		if($dt_inizio==-1)
		{
			if(!isset($id) || $id=="")
				header("Location: /admin/banner.php&alert=28");
			else
				header("Location: /admin/banner.php?id=".$id."&alert=28");				
			return;
		}		
		$dt_fine = $obj->formattaDataPerQuery($_POST['dt_fine']);
		
		if($dt_fine==-1)
		{
			if(!isset($id) || $id=="")
				header("Location: /admin/banner.php&alert=28");
			else
				header("Location: /admin/banner.php?id=".$id."&alert=28");
			return;
		}		
		
		if(!isset($id) || $id=="")
		{
			$sql = "INSERT INTO banner (user_id, tipo, pos, path_banner, note, 
			href_banner, href_banner_en, href_banner_fr, href_banner_es, href_banner_pt, href_banner_de, href_banner_zh, 
			title_banner, slogan_banner, f_attivo, f_sezione_EL, f_sezione_ET, f_sezione_ES, f_sezione_TL, f_sezione_TT, f_sezione_TS, f_sezione_GL, f_sezione_GT, f_sezione_GS,
		    dt_inizio, dt_fine
			) VALUES ($user_id, '$tipo', '$pos', '$path_banner', '$note', 
			'$href_banner', '$href_banner_en', '$href_banner_fr', '$href_banner_es', '$href_banner_pt', '$href_banner_de', '$href_banner_zh', 
			'$title_banner', '$slogan_banner', '$f_attivo', '$f_sezione_EL', '$f_sezione_ET', '$f_sezione_ES', '$f_sezione_TL', '$f_sezione_TT', '$f_sezione_TS', '$f_sezione_GL', '$f_sezione_GT', '$f_sezione_GS',
		    '$dt_inizio', '$dt_fine')";
		}	
		else
			$sql = "UPDATE banner SET user_id = $user_id, tipo='$tipo', pos='$pos', path_banner='$path_banner', note='$note', 
			href_banner='$href_banner', href_banner_en='$href_banner_en', href_banner_fr='$href_banner_fr', href_banner_es='$href_banner_es', href_banner_pt='$href_banner_pt', href_banner_de='$href_banner_de', href_banner_zh='$href_banner_zh', 
			title_banner='$title_banner', slogan_banner='$slogan_banner', f_attivo='$f_attivo', f_sezione_EL='$f_sezione_EL', f_sezione_ET='$f_sezione_ET', f_sezione_ES='$f_sezione_ES', f_sezione_TL='$f_sezione_TL', f_sezione_TT='$f_sezione_TT', f_sezione_TS='$f_sezione_TS', f_sezione_GL='$f_sezione_GL', f_sezione_GT='$f_sezione_GT', f_sezione_GS='$f_sezione_GS', dt_inizio='$dt_inizio', dt_fine='$dt_fine' WHERE id=$id";
					
		//die($sql);
		$result = mysql_query($sql, $this->conn);
		if(!$result)
		{
			$message  = 'Invalid query: ' . mysql_error() . "\n";
			$message .= 'Whole query: ' . $sql;
			header("Location: /admin/banner.php?id=".$id."&alert=26");
			return;
		}		
		if(!isset($id) || $id=="")
			$id = mysql_insert_id();
		header("Location: /admin/banner.php?id=".$id."&alert=22");
		return;
	}
	
	function DelBanner()
	{
		$id = $_POST['id'];
		$sql = "DELETE FROM banner WHERE id=$id";
					
		//die($sql);
		$result = mysql_query($sql, $this->conn);
		if(!$result)
		{
			$message  = 'Invalid query: ' . mysql_error() . "\n";
			$message .= 'Whole query: ' . $sql;
			header("Location: /admin/banner.php?id=".$id."&alert=26");
			return;
		}		
		
		$banner = stripslashes($_POST['path_banner']);
		//cancello l'immagine				
		if(file_exists($_SERVER{'DOCUMENT_ROOT'}."/images/banner-escort/escort/$banner") )
		{
			unlink($_SERVER{'DOCUMENT_ROOT'}."/images/banner-escort/escort/$banner");
		}
		header("Location: /admin/banners.php");
		return;
	}
	
	function UpdateDatesBanner($id_banner)
	{
		//Recupero l'id utente
		$sql = "SELECT user_id FROM banner WHERE id=$id_banner";
		
		$result = mysql_query ($sql, $this->conn);
		$row = mysql_fetch_array($result);

		$user_id = $row['user_id'];
		mysql_free_result($result);
					
		//Recupero l'ultimo contratto attivo e valido dell'utente
		$sql = "SELECT dt_inizio, dt_fine from abbonamenti WHERE abbonamenti.id_user = $user_id 
		 AND dt_fine = (SELECT MAX(dt_fine) from abbonamenti WHERE id_user = $user_id )";
		//die($sql);
		$result = mysql_query ($sql, $this->conn);
		$row = mysql_fetch_array($result);

		$dt_inizio = $row['dt_inizio'];
		$dt_fine = $row['dt_fine'];
		mysql_free_result($result);
		
		$sql = "UPDATE banner SET dt_inizio='$dt_inizio', dt_fine='$dt_fine' WHERE id = $id_banner";
					
		//die($sql);
		$result = mysql_query($sql, $this->conn);
		if(!$result)
		{
			$message  = 'Invalid query: ' . mysql_error() . "\n";
			$message .= 'Whole query: ' . $sql;
			header("Location: /admin/profile.php?id=".$user_id."&alert=26");
			return;
		}		
		
		header("Location: /admin/profile.php?id=".$user_id."&alert=38#tabs-5");
		return;
	}
	
	function GeneraHrefBanner($id_banner)
	{
		//Recupero l'id utente
		$sql = "SELECT user_id FROM banner WHERE id=$id_banner";
		
		$result = mysql_query ($sql, $this->conn);
		$row = mysql_fetch_array($result);

		$user_id = $row['user_id'];
		mysql_free_result($result);
				
		$page = new Frontend();
		$urlBannerIt = $page->GetUrlBanner($user_id, "it");
		$urlBannerEn = $page->GetUrlBanner($user_id, "en");
		$urlBannerEs = $page->GetUrlBanner($user_id, "es");
		
		$sql = "UPDATE banner SET href_banner='$urlBannerIt',href_banner_en='$urlBannerEn',href_banner_es='$urlBannerEs' WHERE id = $id_banner";
					
		//die($sql);
		$result = mysql_query($sql, $this->conn);
		if(!$result)
		{
			$message  = 'Invalid query: ' . mysql_error() . "\n";
			$message .= 'Whole query: ' . $sql;
			header("Location: /admin/banner.php?id=".$id_banner."&alert=26");
			return;
		}		
		
		header("Location: /admin/banner.php?id=".$id_banner."&alert=22");
		return;
	}
	
	function DuplicaBanner($id_banner)
	{
		$sql = "INSERT INTO banner (tipo, pos, user_id, path_banner, note, href_banner, href_banner_en, href_banner_fr, href_banner_es, href_banner_pt, href_banner_de,	href_banner_zh,	title_banner, slogan_banner, f_attivo, durata_gg,  dt_inizio, dt_fine) SELECT tipo,	pos, user_id, path_banner, note, href_banner, href_banner_en, href_banner_fr, href_banner_es, href_banner_pt, href_banner_de,	href_banner_zh,	title_banner, slogan_banner, 'N', durata_gg,  dt_inizio, dt_fine FROM banner where id = ".$id_banner;
					
		//die($sql);
		$result = mysql_query($sql, $this->conn);
		if(!$result)
		{
			$message  = 'Invalid query: ' . mysql_error() . "\n";
			$message .= 'Whole query: ' . $sql;
			header("Location: /admin/banner.php?id=".$id_banner."&alert=26");
			return;
		}		
		$id_banner_new = mysql_insert_id();
		
		header("Location: /admin/banner.php?id=".$id_banner_new."&alert=38#tabs-5");
		return;
	}
	public function CompositeContent()
	{
		$page = basename($_SERVER['PHP_SELF']);

		switch($page)
		{
			case "banners.php":				
			$classe = new Banner();
			$classe->ReadBannerList();
			break;
			
			case "banner.php":			
			$classe = new Banner();
			$classe->ShowSingleBanner();
			break;
		}
	}
	
}
 
?>
